package com.jxpanda.spring.module.wechat.component.message.pojo.general;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.jxpanda.spring.module.wechat.component.message.pojo.MsgType;
import com.jxpanda.spring.module.wechat.component.message.pojo.WechatMessage;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.SuperBuilder;

import java.util.List;

/**
 * 图文消息类
 */
@SuperBuilder
@EqualsAndHashCode(callSuper = true)
@Data
public class WechatNewsMessage extends WechatMessage {
    /**
     * 是否开启id转译
     */
    @JsonProperty("enable_id_trans")
    private Integer enableIdTrans;

    @JsonProperty("news")
    private News news;

    @Override
    public String getMsgType() {
        return MsgType.NEWS.getValue();
    }

    @Data
    public static class News {
        @JsonProperty("articles")
        private List<Article> articles;

        @Data
        public static class Article {
            /**
             * 文章标题
             */
            @JsonProperty("title")
            private String title;

            /**
             * 文章描述
             */
            @JsonProperty("description")
            private String description;

            /**
             * 文章链接
             */
            @JsonProperty("url")
            private String url;

            /**
             * 文章配图链接
             */
            @JsonProperty("picurl")
            private String picUrl;

            /**
             * 小程序appid
             */
            @JsonProperty("appid")
            private String appId;

            /**
             * 小程序页面路径
             */
            @JsonProperty("pagepath")
            private String pagePath;
        }
    }
}

